Attributes
The next step in designing your database is to determine the attributes for the business objects. That is, to decide what you need to know about people, things or events you want to record.
We recommend that you add Create and Update Date attributes and Create and Update User attributes whenever you create a new business object. If the business object is to be used as a collection object, then you must add the Create Date attribute.
For more information about adding these types of attributes, see Persistence types.
To create a new attribute:
- On the Business Objects tree, select the relevant business object, then on the Actions list, click New Attribute.
A new attribute appears with the default name, [New Attribute], selected. - Type a name for the new attribute, then press Enter.
This is entered as the Title property and does not need to be unique. The Name is generated automatically from the Title removing any spaces. The Name must be unique. - In the Properties grid, complete the relevant information for the attribute.
Title – Titles are used in the user interface where a label is required for the attribute. For example, if an attribute is included in a multi-column list, its title is used as the column title. The attribute title is the name by which you will usually refer to the attribute.
Titles can contain any characters (including spaces) and do not need to be unique.
Name – Used internally as a unique identifier for the business object attribute. Attribute Names can consist of up to sixty-four alphanumeric characters, with no spaces. You can use only the following characters: A through Z, and 0 through 9 (not as the first character).
Description – Describes the function of the attribute. When a user holds their mouse over the required field, a tooltip appears showing this information.
Data Type – Identifies the type of data stored by the attribute. The data types supported depend on the database system you are using. For information about the available data types, refer to the online help for the database system that you are using.
Max. Length – Applies only to String and Binary data types – you do not need to explicitly specify it for other data types. If you want a limitless length, type -1. If the attribute is not a string or binary data type, the maximum length does not apply.
Is Name? – Indicates whether this attribute is used as the Name for the business object. Each business object is identified by a unique identification number, known as a GUID. As this is not very user friendly, you can specify that a specific attribute is the Name attribute. The Is Name attribute is the attribute that you usually use to refer to the business object. Only String attributes can be set as Is Name attributes, and you must specify one Is Name attribute for each business object.
Is Mandatory? – Indicates whether this attribute must be populated before you can save the business object instance.
If you change the Is Mandatory? value from False to True for an existing attribute, another property, Backfill value, appears. Mandatory attributes cannot have empty (null) values in the database. This means that when you add a new mandatory attribute to an existing object, you need to specify a backfill value to fill all of the existing values for that attribute.
Is Auditable? – Specifies that this attribute is audited. For more information, see Specifying which items of a process are audited.
Persistence type – Relates only to specific attribute types: DateTime, user, and identity. Specifies whether the attribute’s value is automatically generated. For example, a DateTime attribute can record the creation date and time, or the time a record was updated. Similarly, a user attribute can record the user who created the item, or the user who last updated it. CreateIdentity is used to increment identifiers, such as a Change ID. For more information, see Persistence types.
This applies only to values automatically generated. If you want to specify a value, for example, date of birth or due date or similar, leave this property blank.
Adjust Value For Time Zone – To avoid issues when accessing records across time zones or across changes in daylight saving time, you can set a date/time attribute to be stored in UTC. This attribute is then adjusted for time zone differences when it is displayed.
Select True if you want to adjust date/time values to take account of the time zone. The entered date/time will be converted to UTC before being stored in the database and will be converted back to the appropriate local time of the client when it is viewed.
Select False if you want the date/time value entered to be stored as it is. When viewed, the date/time will be the same as that entered, irrespective of the time zone of the client.
You can set this value only when you create the attribute. After you have saved it, you cannot change it using Object Designer.
Propagate Actions – This property is only available on Children or Parent collections, and is used for Parent-Child linking. Indicates whether actions on the parent item are added (or propagated) to its linked children. For more information, see Parent-Child linking.
Business Object – Identifies the business object to which the attribute belongs. This is generated automatically and cannot be modified.
SubDataType – Applies only to String, Int16 and Int32 data types – further identifies the type of data stored by this attribute. For example, Colour, Timezone and so on.
Is Owner – Set to True if the related object is the parent object.
Calculation Type – Specifies if this attribute is calculated. For more information, see Calculations.
Search Type – If you have set the business object Is Knowledgeable property to True, you can then set the Search Type property for the attribute. You can specify that the text must match exactly, or whether it is a natural language search.
Is Localised? – Specifies whether or not you can add translations to this attribute in a multilingual system (for attributes on Article and Configuration Item only). For more information, see Creating a multilingual system.
Is Privilegeable? – Indicates whether privileges can be applied to this attribute. Note that when you have set this property, you cannot change it at a later date.
- Click .
You can copy existing attributes to other objects by dragging them from the Attributes tree onto the required object in the Business Objects tree.